package cn.tedu.carehome.foundation.service;

import cn.tedu.carehome.foundation.pojo.dto.FoodPackageAddNewDTO;
import cn.tedu.carehome.foundation.pojo.dto.FoodPackageLinkAddNewDTO;
import cn.tedu.carehome.foundation.pojo.dto.FoodPackageLinkUpdateDTO;
import cn.tedu.carehome.foundation.pojo.dto.FoodPackageUpdateDTO;
import cn.tedu.carehome.foundation.pojo.vo.FoodPackageAdminVO;
import cn.tedu.carehome.foundation.pojo.vo.FoodPackageLinkAdminVO;
import cn.tedu.carehome.foundation.pojo.vo.FoodPackageLinkUpdateVO;
import cn.tedu.carehome.foundation.pojo.vo.FoodPackageUpdateVO;
import cn.tedu.carehome.foundation.restful.JsonPage;

import java.util.List;

/**
 * 处理套餐餐品关联数据的业务接口
 *
 * @author 袁田
 * @version 0.0.1
 */

public interface IFoodPackageLinkService {

    /**
     * 添加套餐餐品关联
     *
     * @param foodPackageLinkAddNewDTO 新的餐品套餐关联对象
     */
    void addNew(FoodPackageLinkAddNewDTO foodPackageLinkAddNewDTO);


    /**
     * 根据id删除套餐餐品关联
     * @param id 待删除的id
     */
    void deleteById(Long id);


    /**
     * 查询套餐餐品关联列表信息
     * @return 展示在后台管理界面的套餐餐品关联的集合
     */
    List<FoodPackageLinkAdminVO> queryFoodPackageLinkList();
    JsonPage<FoodPackageLinkAdminVO> queryFoodPackageLinkListByPage(Integer page,Integer pageSize);

    /**
     * 根据id查询套餐餐品关联信息
     * @param id 待查询的套餐餐品关联对象
     * @return 查询的套餐餐品关联信息
     */
    FoodPackageLinkUpdateVO selectById(Long id);

    /**
     * 更新套餐信息
     * @param foodPackageLinkUpdateDTO 更新的套餐数据
     */
    void update(FoodPackageLinkUpdateDTO foodPackageLinkUpdateDTO);
}
